Segundo Robbins (2012), “Do ponto de vista do economista, as condições da existência humana exibem quatro características fundamentais. Os fins são vários. O tempo e os meios para obter esses fins são limitados e permitem aplicações alternativas. Ao mesmo tempo, os fins têm importâncias diferentes. Eis-nos aqui, criaturas conscientes com vários desejos e aspirações, com multidões de tendências instintivas, todas nos impelindo, de diferentes maneiras, a agir. O tempo em que essas tendências podem se expressar é limitado. O mundo exterior não oferece oportunidades completas para sua total satisfação. A vida é curta. A natureza é mesquinha. Nossos companheiros têm outros objetivos. Ainda assim nós podemos usar as nossas vidas para fazer coisas diferentes, podemos usar nossas ferramentas e os serviços de outros para atingir diferentes objetivos.”
O ser humano faz, nesse contexto, escolhas todos os dias, reagindo a incentivos e restrições impostas pelo ambiente. De outra forma, o ser humano, dotado de necessidades ilimitadas, escolhe o uso de recursos escassos entre fins alternativos. Em microeconomia os economistas usam de cálculo diferencial e integral para analisar os comportamentos dos agentes econômicos, como se a vida fosse um processo de otimização condicionada.
Milhões de indivíduos tomando decisões diárias sobre como alocar recursos escassos entre fins alternativos gerarão, como consequência, o objeto de estudo da macroeconomia. Grandes temas, como o entendimento do processo de crescimento e a dinâmica inflacionária, possuem, total relação com indivíduos dotados de alguma racionalidade tomando decisões de forma isolada. Esse é o enorme desafio da análise macro. Como, afinal, agregar essas milhares de decisões individuais? Como representar o processo produtivo daí resultante? Como inferir o preço de todos os bens e serviços vendidos em uma economia? Como obter relações válidas entre essas variáveis agregadas?
Não é simples. Para entender corretamente é preciso primeiramente entender uma divisão importante. Existe a construção das variáveis macroeconômicas. Esse é o campo da contabilidade social, com seus desafios empíricos e uso extensivo de métodos estatísticos. Depois de obtidas essas variáveis, ocorre a construção da Teoria Macroeconômica propriamente dita, o segmento que estuda o comportamento da economia em termos agregados.
library(GetBCBData)
#dados_sgs <- GetBCBData::gbcbd_get_series(
#id = c("IPCA" = 13522, "IBC-Br" = 24363, "Resultado Primário" = 5793),
#first.date = "2003-01-01",
#last.date = "2023-01-01",
#format.data = "wide"
#)
#tail(dados_sgs)
#write.csv2(dados_sgs, file='arquivo00.csv')
dados_sgs <- ts(read.csv2('arquivo00.csv',
header=T, sep=';', dec=',')[,-c(1,2)],
start=c(2003,01), freq=12)
### Gráficos
layout(matrix(c(1,1,2,3), 2, 2, byrow = TRUE))
plot(dados_sgs[,1], xlab='', ylab='% a.a.', main='Inflação')
plot(dados_sgs[,2], xlab='', ylab='Número Índice', main='Nível de Atividade')
plot(dados_sgs[,3], xlab='', ylab='% PIB', main='Resultado Primário')
Figura 1: Exemplos de variáveis macroeconômicas.
A análise da conjuntura econômica doméstica e internacional é, então, uma espécie de interseção entre contabilidade social e teoria macroeconômica, com uso cada vez mais disseminado da econometria. O analista de conjuntura deve compreender o que os dados estão dizendo, com base na teoria e no teste empírico. Assim, deve ter uma base sólida de conhecimento teórico e também saber lidar com a coleta, tratamento, análise e apresentação de dados.
Os macroeconomistas procuram entender fenômenos econômicos específicos por meio da formulação de modelos, representações simplificadas da realidade. A construção desses modelos envolve, segundo Hermann (2004):
Contemporaneamente, os modelos macroeconômicos são todos eles expressos em termos matemáticos. Para ilustrar, considere a função Consumo abaixo:
\[ C_{t} = \alpha + cY_{t} \tag{1} \]
onde \(C_{t}\) é a variável endógena do modelo, \(\alpha\) é uma constante, \(c\) é um parâmetro e \(Y_{t}\) é a variável exógena. Nesses termos, o modelo é dito determinístico, posto que dados valores para \(Y_{t}\), para o parâmetro e para a constante é possível inferir perfeitamente valores para \(C_{t}\). De outra forma, pode-se considerar um modelo estocástico, adicionando um termo de erro a (1), como abaixo:
\[ C_{t} = \alpha + cY_{t} + \varepsilon_{t} \tag{2} \]
onde \(\varepsilon_{t}\) segue uma distribuição normal com média nula e variância constante. Nesses termos, mesmo com valores conhecidos de \(\alpha\), \(c\) e \(Y_{t}\), tudo o que pode-se ter com o modelo é uma aproximação dos valores de \(C_{t}\).
O Produto Interno Bruto é a soma de todos os bens e serviços finais produzidos por um país em determinado período de tempo. Ele pode ser medido por três óticas:
Ótica da Produção: \(\sum_{i=1}^{n} VA = \sum_{i=1}^{n} Q_i P_i - CI\)
Ótica da Renda: \(\sum_{i=1}^{n} Rem_{Fatores}\)
Ótica da Despesa: \(\sum_{i=1}^{n} VP_{Bens Finais}\)
assim, basicamente se mensura pelo lado de quem produziu (valor adicionado como a soma do produto agregado menos o consumo intermediário); ou se mensura pelo lado de quem foi remunerado durante a produção (salários, lucros, aluguéis e juros); ou se analisa pelo lado de quem comprou (C+I+G+X-M)
O produto produzido pelas firmas é vendido no mercado de bens e serviços para as famílias, em troca de moeda, que as mesmas obtém no mercado de fatores. Neste, elas entregam sua força de trabalho em troca de salários. Com esse trabalho, as firmas podem produzir aquele produto.
Todo fluxo real é acompanhado de um fluxo monetário na medida em que as transações econômicas são efetuadas em moeda. A partir desse denominador comum, a moeda, é possível agregar bens e serviços heterogêneos, pelo valor ao qual eles são transacionados no mercado.
A igualdade entre produção, renda e despesa é, em termos de moeda e período de tempo, medidos ex-post.
No mundo real, se os fluxos reais forem diferentes dos fluxos monetários, há ajuste via preços ou via quantidades. Isto é, na economia real nem tudo o que é produzido pelas empresas (fluxo real) é de fato consumido pelas famílias (fluxo monetário), necessitando portanto de algum tipo de ajuste, seja via o mecanismo de preço e/ou por meio de variações nas quantidades ofertadas. Nesse contexto, há uma clara divisão de trabalho:
Teoria Macroeconômica: Explicar qual tipo de ajuste é predominante em uma situação específica;
Contabilidade Social: Medição ex-post através de mecanismos contábeis que garantem o equilíbrio entre fluxos monetários e reais.
A interpretação sobre em que medida esses ajustamentos distanciam a economia de uma trajetária de crescimento equilibrada é um dos grandes objetos da macroeconomia.
Uma parte do PIB, por suposto, deve ser descontada dado o contato com o exterior. Isto é, \[ PIB = PNB - RLEE \tag{3} \]
com o PNB sendo a renda que efetivamente pertence aos residentes no país e a RLEE (Renda Líquida Enviada ao Exterior), a diferença entre o que é pago por fatores de produção externos utilizados internamente e o que é recebido do exterior por fatores de produção nacionais empregados em outros países. No Brasil, a RLEE enviada supera a recebida. Assim, o PNB é menor do que o PIB.
library(ggplot2)
data <- read.csv2('arquivo01.csv', header=T, sep=';')
dates <- seq(as.Date('2000-01-01'), as.Date('2022-09-01'), by='3 month')
df <- data.frame(time=dates, pib=data$pib, pnb=data$pnb)
ggplot(df, aes(x=time))+
geom_line(aes(y=pib/1000, colour='PIB'), size=.8)+
geom_line(aes(y=pnb/1000, colour='PNB'), size=.8)+
scale_colour_manual('', values=c('PIB'='darkblue',
'PNB'='red'))+
xlab('')+ylab('US$ bilhões')+
theme(legend.position = 'top')
Figura 2: PIB e PNB
Na macroeconomia, ocorre a comparação entre variáveis macroeconômicas em diferentes pontos de tempo, ou em diferentes economias no mesmo ponto do tempo. Para fazer comparações significativas, geralmente é fundamental verificar quais as diferenças nas variáveis macroeconômicas refletem diferenças de preços dos bens ou diferença nos volumes físicos dos bens. Para isso, é sempre importante deflacionar as séries, isto é, retirar o efeito do aumento de preços.
Para deflacionar as séries, se faz uso de Índices de Preços, que, basicamente, acompanham a evolução dos preços de uma determinada cesta de bens e serviços ao longo do tempo. Assim, o Valor Real (\(V_r\)) será dado por:
\[
V_r = \frac{I_k}{I_t} V_t
\tag{4}
\]
As variáveis macroeconômicas são expressas em termos de fluxo e estoque, sendo importante diferenciar um conceito do outro.
Fluxos: magnitude econômica medida como uma taxa por unidade de tempo (em um período de tempo);
Estoques: É uma magnitude medida em um determinado ponto do tempo.
assim, o fluxo seria a variação do estoque medido ao longo do tempo.
#dados_sgs <- GetBCBData::gbcbd_get_series(
#id = c("NFSP" = 5793, "DBGG" = 13762),
#first.date = "2006-12-01",
#last.date = "2023-02-01",
#format.data = "wide"
#)
#tail(dados_sgs)
#write.csv2(dados_sgs, file='arquivo02.csv')
dados_sgs <- ts(read.csv2('arquivo02.csv',
header=T, sep=';', dec=',')[,-c(1,2)],
start=c(2006,12), freq=12)
layout(matrix(c(1,1,2,2), ncol=2, byrow = TRUE))
plot(dados_sgs[,1], xlab='', ylab='% do PIB', main='Necessidade de Financiamento do Setor Público')
plot(dados_sgs[,2], xlab='', ylab='% do PIB', main='Dívida Bruta do Governo Geral')
Figura 3: Fluxos e Estoques
Muitas das importantes questões macroeconômicas envolvem opções que não ocorrem apenas em um período de tempo. Uma decisão sobre quanto poupar, por exemplo, na verdade é uma decisão sobre tempo. Isto é, se é melhor consumir agora ou no futuro. Essa é, portanto, uma decisão intertemporal.
Uma decisão intertemporal envolve, nesse contexto, a distribuição de uma determinada decisão econômica entre pontos diferentes do tempo. Para que isso possa ser feito, é necessário introduzir dois conceitos importantes:
Usando uma taxa de juros, pode-se traduzir um determinado valor em dinheiro do futuro em um valor presente. Isso é feito aplicando a seguinte fórmula genérica:
\[
VP = \frac{Y_n}{(1+i)^n}
\tag{5}
\]
Um último ponto básico é o papel das expectativas na macroeconomia. Isto porque, quando agentes econômicos tomam decisões intertemporais, há sempre incerteza e risco envolvidos. Desse modo, é necessário formular alguma expectativa em relação ao que vai ocorrer no futuro para que essas decisões sejam possíveis de serem tomadas.
De forma geral, as expectativas em relação ao futuro podem ser:
Expectativas estáticas são aquelas em que um agente observa o valor passado de uma variável e, sem dispor de qualquer conhecimento sobre a lei de movimento dessa variável (representada por y), assume que ela será a mesma no futuro a não ser que algo aleatório (representado por \(\epsilon\)) aconteça e traga-a para um novo patamar, onde lá ficará. Em razão das inovações serem aleatórias, a melhor expectativa para o valor futuro do ativo é o valor que ele se encontra hoje (\(Y_t\)).
As expectativas adaptativas usam relações entre variáveis estabelecidas no passado para construir uma espécie de convergência futura, sob a hipótese de que essas relações se manterão no futuro. É um passo a frente das expectativas estáticas.
A mais sofisticada das formações de expectativas modeláveis até hoje é conhecida como a expectativa racional. A expectativa racional pode ser mais intuitivamente compreendida como uma expectativa que filtra tudo aquilo que é relevante para prever o futuro, não somente aquilo que já está no passado. Ela assume que os agentes de uma economia já possuem uma boa ideia das relações de causa e efeito das políticas públicas e econômicas adotadas pelos governos ex-ante, e por isso agem de forma antecipada em benefício próprio.
A partir da década de 1990, a macroeconomia repousou naquilo que ficaria conhecido como nova síntese neoclássica ou novo consenso macroeconômico. Uma das implicações desse consenso foi a construção de pequenos modelos estruturais para analisar os impactos da política econômica, em particular da política monetária.
Os principais pontos desses modelos são:
A inflação depende da taxa de juros real;
A taxa de juros básica nominal é o instrumento de política;
Existem mecanismos de transmissão nas decisões de política econômica;
Os modelos contém, de forma geral, uma curva IS, uma Curva de Phillips e uma Função de Perda Social;
As expectativas dos agentes podem ser do tipo backward-looking ou forward-looking;
Existem defasagens no mecanismo de transmissão.
O novo consenso é classificado como novo-keynesiano, na medida em que admite subequilíbrios no curto prazo derivados de falhas de mercado. Em outras palavras, o hiato do produto pode ser diferente de zero no curto prazo.
No Brasil, tão logo foi adotado o regime de metas para a inflação, em junho de 1999, o Banco Central tem se esforçado em apresentar ao público suas construções teóricas. O modelo básico do Banco Central, que busca captar os mecanismos de transmissão das decisões de política monetária, bem como as defasagens aí envolvidas, pode ser visto em Bogdanski et al. (2000). Ele é composto por:
Uma Curva IS (Investment-Saving), representando o lado da demanda;
Uma Curva de Phillips, representando o lado da oferta;
Uma Condição de Paridade Descoberta da taxa de juros, representando o contato com o setor externo;
Uma Regra de Taylor, representando as decisões de política monetária.
A Curva IS pode ser representada como abaixo:
\[ h_{t} = \beta_{0} - \beta_{1}(i_{t} - E_{t}\pi_{t+1} - r^*) + \beta_{2}\Theta_{t-1} + \beta_{3}\Psi_{t-1} + \varepsilon_{t}^{d} \tag{6} \]
onde \(h_{t}\) é o hiato do produto (diferença entre o PIB efetivo e o PIB potencial), \(i_{t}\) é a taxa de juros nominal, \(E_{t}\pi_{t+1}\) é a expectativa em \(t\) para a inflação em \(t+1\), \(r^*\) é a taxa de juros neutra, \(\Theta_{t-1}\) é a taxa de câmbio real, \(\Psi_{t-1}\) representa as necessidades de financiamento do setor público e \(\varepsilon_{t}^{d}\) é um choque de demanda.
A Curva de Phillips é representada por:
\[ \pi_{t} = \alpha_{0} + \alpha_{1}\pi_{t-1} + \alpha_{2}E_{t}\pi_{t+1} + \alpha_{3}h_{t-1} + \alpha_{4}\Delta\epsilon_{t} + \varepsilon_{t}^{s} \tag{7} \]
onde \(\pi_{t}\) é a inflação, \(\Delta\epsilon_{t}\) é a primeira diferença da taxa de câmbio nominal e \(\varepsilon_{t}^{s}\) é um choque de oferta.
A condição de paridade é dada por:
\[ \Delta\epsilon_{t} = \phi_{0} - \phi_{1}(i_{t} - i_{t}^*) + \phi_{2}x_{t} + \varepsilon_{t}^{e} \tag{8} \] onde \((i_{t} - i_{t}^*)\) representa o diferencial de juros, \(x_{t}\) é o prêmio de risco e \(\varepsilon_{t}^{e}\) é um choque externo.
A regra de Taylor pode ser definida como:
\[ i_{t} = \omega_{0} + \omega_{1}i_{t-1} + \omega_{2}(E_{t}\pi_{t+1} - \pi^*) + \omega_{3}h_{t} + \omega_{4}\Delta\epsilon_{t} + \varepsilon_{t}^{bcb} \tag{9} \] Onde \(\pi^*\) é uma meta de inflação e \(\varepsilon_{t}^{bcb}\) é um ruído branco. Com isto, suponha que o Banco Central reduza a taxa básica de juros. Qual o efeito dessa redução sobre a economia?
Se a redução da taxa de juros nominal for suficiente para tornar a diferença entre a taxa de juros real e a taxa de juros neutra (aquela consistente com a estabilidade da taxa de inflação ao longo do tempo. É Variável não observável, que deve ser estimada e que depende de diversos fatores) negativa, o efeito passa a ser positivo sobre o hiato do produto, expresso na Curva IS.
Uma taxa de juros nominal menor implica em um diferencial de juros (taxa de juros doméstica menos a taxa de juros externa) menor, contribuindo para desvalorizar a taxa de câmbio nominal. Se essa desvalorização nominal implicar em desvalorização real, há ainda um efeito sobre as exportações líquidas, contribuindo para pressionar positivamente o hiato do produto. Por fim, a inflação é afetada pelo hiato do produto e pela desvalorização nominal da taxa de câmbio, via Curva de Phillips. Em outras palavras, reduções na taxa básica de juros têm implicações sobre o nível de atividade e, consequentemente, sobre a inflação.
Um ponto importante na equação \((7)\) é que que a inflação também é afetada pelas expectativas dos agentes. Há diversas formas de modelar como os agentes formam suas expectativas em relação a alguma variável macroeconômica. Por aqui, entretanto, basta supor que os agentes reagem ao sinal emitido pelo Banco Central, seja por meio de suas ações efetivas de política monetária, seja por sua comunicaçõo com o público. Nesses termos, uma política monetária transparente, que comunica adequadamente sua estratégia para fazer a inflação convergir para a meta, contribui para manter as expectativas ancoradas. De outra forma, quando o Banco Central erra na sua comunicação com o público, modificando constantemente sua estratégia de política monetária, isso contribui para tornar as expectativas mais voláteis e sensíveis a choques de oferta.
Outra questão interessante aqui é sobre o que o hiato do produto representa. Em termos simples, ele expressa uma medida global de ociosidade da economia. A ideia é que quanto menos ociosa for a economia, maior será a pressão inflacionária. Isso é também captado na equação \((7)\) pelo coeficiente \(\alpha_{3}\).
Com esse modelo básico compreendido, é possível interpretar como mudanças em uma determinada variável afetam outras, bem como o mecanismo pelo qual a política econômica pode afetar o nível de atividade. O próximo passo são as análises empíricas.
Figura 4: Juro Real x Juro Neutro
O trabalho de um Analista de Conjuntura passa, basicamente, pelas quatro etapas de data science. Primeiro, é preciso ter intimidade com uma infinidade de fontes de dados. Afinal, é preciso escolher entre diversos indicadores econômicos, entender a forma como eles são construídos e saber extraí-los em um formato tratável.
Uma vez colhido, esse dado precisa passar por uma etapa de lapidação. Pouco adianta pegar o índice de preços ao consumidor de um determinado país. De forma geral, a única informação obtida desse índice é que ele cresce ao longo do tempo. Será preciso, então, conseguir entender a velocidade deste crescimento. Além disso, se for fixado um determinado período, de três, seis ou doze meses, por exemplo, qual será a taxa de crescimento?
A quantidade de informação a ser extraída de um dado vai depender sobremaneira dessa etapa. Neste curso são coletados e tratados dados de nível de atividade, inflação, mercado de trabalho, mercado de crédito, política monetária, política fiscal, setor externo e economia internacional. Serão mostrados uma infinidade de indicadores que buscam verificar a situação da economia brasileira.
Depois de coletado e tratado o dado, é preciso analisar. Essa parte une teoria econômica, métodos estatísticos e econométricos. A parte técnica do trabalho envolve, basicamente, conseguir construir modelos que forneçam insights sobre como determinadas variáveis se relacionam ao longo do tempo.
A última etapa do trabalho de um Analista de Conjuntura passa por ligar os pontos, de forma que seja possível explicar para um leigo o que está acontecendo com a economia doméstica e internacional.
A macroeconomia nasce da soma de milhões de decisões diárias de indíviduos descentralizados. Tais indivíduos, com necessidades ilimitadas, decidem todos os dias o que produzir, como produzir e como distribuir esse esforço produtivo. A variável macroeconômica que representa esse esforço de forma mais completa é chamada de Produto Interno Bruto, ou simplesmente PIB, a soma de todos os bens e serviços finais produzidos por um país ao longo de um determinado período de tempo.
O PIB é uma medida expressa em valores correntes ou números índices, do quanto um país utilizando recursos escassos, como trabalho e capital, gerou de produção e, consequentemente, de renda em um determinado período. Assim, a taxa de crescimento do PIB fornece uma boa medida sobre o quão rápido ou devagar um determinado país está crescendo economicamente.
#dados_sgs <- GetBCBData::gbcbd_get_series(
#id = c("PIB" = 22099, "PIB_SA" = 22109),
#first.date = "1996-03-01",
#last.date = "2022-09-01",
#format.data = "wide"
#)
#tail(dados_sgs)
#write.csv2(dados_sgs, file='arquivo03.csv')
pib <- ts(read.csv2('arquivo03.csv',
header=T, sep=';', dec=',')[,-c(1,2)],
start=c(1996,01), freq=4)
hp <- hpfilter(pib[,2], type='lambda', freq=1600)
range <- range(pib[,2])
plot(pib[,2], type="l", lwd=3, xaxt='n', bty='l', xlab='',
ylab='Número Índice',
ylim=c(range[1], range[2]))
polygon(x=c(2020,2020, 2021,2021),
y=c(range[1]-10, range[2]+10, rev(range[2]+10), rev(range[1]-10)),
density=NA, col="lightgray", border=NA)
polygon(x=c(2014,2014, 2017,2017),
y=c(range[1]-10, range[2]+10, rev(range[2]+10), rev(range[1]-10)),
density=NA, col="lightgray", border=NA)
polygon(x=c(2008,2008, 2010,2010),
y=c(range[1]-10, range[2]+10, rev(range[2]+10), rev(range[1]-10)),
density=NA, col="lightgray", border=NA)
lines(pib[,2], type="l", lwd=3)
lines(hp$trend, col='red', lty=2, lwd=2)
axis(1, at=c(1996:2022))
grid(, col='grey0')
mtext('Comportamento do PIB trimestral', side=3, line=1, font=2)
legend('topleft', lty=c(1,2), lwd=c(3,2), col=c('black', 'red'),
legend=c('PIB IBGE', 'Filtro HP'), bty='n')
Figura 5: Comportamento do PIB Trimestral (IBGE).
Questões estruturais e questões conjunturais afetam o produto e explicam o seu comportamento ao longo do tempo. Considere que o PIB efetivamente observado (chamado de PIB efetivo) possa ser decomposto em duas partes, a saber:
\[ Y_{t} = Y^P_{t} + h_{t} \tag{10} \] Onde \(Y_{t}\) é o PIB em \(t\), \(Y^P_{t}\) é a tendência de longo prazo do PIB, chamada de produto potencial e \(h_{t}\) é um componente cíclico, chamado de hiato do produto.
O PIB Potencial, \(Y^P_{t}\), a tendência do PIB Efetivo ao longo do tempo, reflete condições estruturais da economia, como a população em idade ativa, o estoque de capital, qualidade da educação, qualidade das instituições, etc. O hiato do produto, \(h_{t}\), o componente cíclico, por sua vez, reflete questões conjunturais, como incentivos de política econômica, condições climáticas, choques externos, incertezas políticas, etc.
Em outros termos, no curto prazo o PIB Efetivo pode crescer mais ou menos do que o PIB Potencial, aquela tendência. No longo prazo, entretanto, o crescimento da economia está limitado pela disponibilidade de fatores e pela forma como esses fatores são combinados.
Isto é, supondo que a estrutura da economia possa ser representada por uma função do tipo Cobb-Douglas, com retornos constantes de escala, do tipo:
\[ Y_{t} = A_{t} K_{t}^{\alpha_{t}} L_{t}^{1-\alpha_{t}} \tag{11} \] onde \(K_{t}\) e \(L_{t}\) são, respectivamente, a quantidade de capital e trabalho, \(A_{t}\) mede a eficiência tecnológica ou a produtividade total dos fatores e \(\alpha_{t}\) mede a participação do capital na renda nacional.
Nesse contexto, \(Y_{t}\), a soma de bens e serviços finais produzidos em determinado período de tempo, será dado pela combinação entre uma determinada quantidade de estoque de capital com outra de trabalho, moderada pela tecnologia disponível. Em última instância, portanto, \(Y_{t}\) estará limitado pela disponibilidade de fatores de produção e pela forma como esses fatores são combinados (a produtividade total dos fatores). Os economistas gostam de chamar essa limitação de produto potencial, ou simplesmente \(Y^P_{t}\).
No curto prazo, a diferença entre \(Y_{t}\) e \(Y^P_{t}\) será assim dada pelo hiato do produto, \(h_{t}\), que, por construção, irá medir o grau de ociosidade da economia. Calcular o hiato do produto, entretanto, não é uma tarefa trivial, uma vez que o PIB potencial não é uma variável observável. É necessário estimar o produto potencial e, depois, calcular o hiato.
Uma forma simples, porém, de fazer isso é obter o PIB Potencial por meio do Filtro Hodrick-Prescott. Considere a seguinte função de perda:
\[ L = \sum_{t=1}^T(Y_t - Y^P_{t})^2 + \lambda \sum_{t=1}^T\left[(Y^P_{t}-Y^P_{t-1}) - (Y^P_{t-1} - Y^P_{t-2})\right]^2 \tag{12} \]
onde T representa o tamanho da amostra e \(\lambda\) é um parâmetro que assume quaisquer valores entre 0 e \(\infty\). A série \(Y^P_{t}\) é aquela que minimiza o valor de \(L\). Observe que o primeiro termo da soma que constitui \(L\) penaliza quaisquer desvios entre \(Y^P_{t}\) e \(Y_{t}\), enquanto que o segundo termo pune quaisquer mudanças no ritmo de crescimento de \(Y^P_{t}\). Logo,
\[ \lim_{\lambda \rightarrow 0} Y^P_{t}=Y_{t} \nonumber \tag{13} \]
\[ \lim_{\lambda \rightarrow \infty} Y^P_{t}= TD \nonumber \tag{14} \]
plot(hp$cycle, bty='l', xlab='', ylab='Número índice', xaxt='n', lwd=2)
axis(1, at=c(1996:2022))
abline(h=0, col='red', lty=1, lwd=2)
grid(col='gray0')
mtext('Hiato do Produto (PIB efetivo - PIB potencial)', side=3, line=1, font=2)
Figura 6: O Hiato do Produto.
O hiato do produto representa, então, o que os economistas gostam de chamar de ciclo econômico ou o ajuste entre o PIB efetivo e o seu potencial. A dinâmica desse ciclo é determinada em grande medida pela rigidez de preços. Fossem os preços totalmente flexíveis, o ajuste seria imediato, implicando que \(h_t\) seria zero, ou seja, o pib efetivamente observado seria sempre igual a sua tendência de longo prazo, o pib potencial.
O quanto a economia está distante do seu crescimento potencial terá papel crucial na definição da taxa de crescimento dos preços (inflação) e, portanto, nas mudanças de taxa de juros por parte do Banco Central. Entender, desse modo, o comportamento do nível de atividade é de suma importância para o analista de conjuntura.
Para analisar o crescimento da economia do Brasil, é preciso pegar dois números-índices para cada um dos componentes do PIB: um encadeado normal e outro com ajuste sazonal. O número índice irá fornecer uma única informação: se o PIB e seus componentes estão crescendo ou diminuindo.
library(BMR)
#Tabela 1620 - Série encadeada do índice de volume trimestral (Base: média 1995 = 100
#https://sidra.ibge.gov.br/tabela/1620
pib <- read.csv(file='arquivo04.csv',
header=T,sep=";",dec=".", skip=4)
pib <- ts(pib[-nrow(pib),-1], start=c(1996,01), freq=4)
colnames(pib) <- c('Agricultura', 'Indústria', 'Serviços', 'PIB', 'Consumo Famílias', 'Gastos Governo', 'Formação Bruta de Capital Fixo', 'Exportações', 'Importações')
#Tabela 1621 - Série encadeada do índice de volume trimestral com ajuste sazonal (Base: média 1995 = 100
#https://sidra.ibge.gov.br/tabela/1621
pib_sa <- read.csv(file='arquivo05.csv',
header=T,sep=";",dec=".", skip=4)
pib_sa <- ts(pib_sa[-nrow(pib_sa),-1], start=c(1996,01), freq=4)
colnames(pib_sa) <- c('Agricultura', 'Indústria', 'Serviços', 'PIB', 'Consumo Famílias', 'Gastos Governo', 'Formação Bruta de Capital Fixo', 'Exportações', 'Importações')
#Analise do PIB e seus componentes
dates <- seq(as.Date('1996-01-01'), as.Date('2022-12-01'), by='3 month')
#pib <- data.frame(time=dates, pib)
#pib1 <- ggplot(pib, aes(x=time))+
# geom_line(aes(y=pib$Agro), color="darkblue", #linewidth=.6)+
# xlab('')+ylab('AGRO')+
# theme(legend.position = 'top')
#library(easyGgplot2)
#ggplot2.multiplot(pib1, pib2, pib3, pib4, pib5, pib6, pib7, pib8, pib9, cols=3)
gtsplot(pib, dates=dates)
Figura 7: PIB e seus componentes encadeado normal
#PIB dessazonalizado e seus componentes
#Conjuntura4
gtsplot(pib_sa, dates=dates)
Figura 8: PIB e seus componentes encadeado com ajuste sazonal
As variações das séries são bem grandes, dado que a análise é sobre o quanto a mesma se modificou entre um trimestre e outro. Mesmo assim, fica evidente que o Agro foi o setor que menos sentiu a crise da pandemia do novo coronavírus.
De forma a obter uma métrica mais suavizada, pode-se comparar o PIB no mesmo trimestre entre anos distintos, ou seja, obter uma variação interanual.
### Variacao Marginal (comparo com o trimestre anterior)
margem <- (pib_sa/stats::lag(pib_sa,-1)-1)*100
colnames(margem) <- colnames(pib_sa)
dates <- seq(as.Date('1996-04-01'), as.Date('2022-12-01'), by='3 month')
gtsplot(margem, dates=dates)
Figura 9: Variação Marginal
### Mesmo trimestre do ano anterior
trimestral <- (pib_sa/stats::lag(pib_sa,-4)-1)*100
colnames(trimestral) <- colnames(pib_sa)
dates <- seq(as.Date('1997-01-01'), as.Date('2022-12-01'), by='3 month')
#Conjuntura6
gtsplot(trimestral, dates=dates)
Figura 10: Variação Interanual
### Acumulado em 4 trimestres
anual <- (((pib_sa+stats::lag(pib_sa,-1)+stats::lag(pib_sa,-2)+stats::lag(pib_sa,-3))/4)/
((stats::lag(pib_sa,-4)+stats::lag(pib_sa,-5)+stats::lag(pib_sa,-6)+stats::lag(pib_sa,-7))/4)-1)*100
colnames(anual) <- colnames(pib)
dates <- seq(as.Date('1997-10-01'), as.Date('2022-12-01'), by='3 month')
#Conjuntura7
gtsplot(anual, dates=dates)
Figura 10: Variação Interanual
#Tabelas
table.margem <- t(tail(round(margem, digits=2),
n=1))
#rownames(table.margem) <- colnames(trimestral[,-10])
table.trimestral <- t(tail(round(trimestral[,-10], digits=2),
n=1))
table.anual <- t(tail(round(anual[,-10], digits=2),
n=1))
resumo <- cbind(table.margem, table.trimestral, table.anual)
colnames(resumo) <- c('Margem', 'Trimestral', 'Anual')
rownames(resumo) <- c('Agricultura', 'Indústria', 'Serviços', 'PIB', 'Consumo Famílias', 'Gastos Governo', 'Formação Bruta de Capital Fixo', 'Exportações', 'Importações')
library(DT)
datatable(resumo,
options = list(dom = 't',
columnDefs =
list(list(className = 'dt-center', targets = "_all"))))
O Banco Central assim define o seu IBC-Br:
O IBC-Br se constitui em um indicador de periodicidade mensal que incorpora a trajetária das variáveis consideradas como proxies para o desempenho dos setores da economia. Dado que o PIB é calculado pelo IBGE é uma variável trimestral, logo existe procura para índices de base mensal que busquem medir o comportamento do nível de atividade. O IBC-Br atender esta demanda. Ele está disponível a partir de 2003.
#dados_sgs <- GetBCBData::gbcbd_get_series(
#id = c("IBC-Br" = 24363, "IBC-BR SA" = 24364),
#first.date = "2003-01-01",
#last.date = "2023-01-01",
#format.data = "wide"
#)
#tail(dados_sgs)
#write.csv2(dados_sgs, file='arquivo06.csv')
ibc.br <- ts(read.csv2('arquivo06.csv',
header=T, sep=';', dec=",")[,-c(1,2)],
start=c(2003,01), freq=12)
par(mfrow=c(1,2))
plot(ibc.br[,1], main='IBC-BR', xlab='', ylab='Número Indice')
grid(col='grey0')
plot(ibc.br[,2], main='IBC-BR SA', xlab='', ylab='Número Indice')
grid(col='grey0')
Figura 11: Índice de Nível de Atividade do Banco Central (IBC-Br)
#variacao mensal
## Variacao mensal
vmensal <- (ibc.br[,2]/stats::lag(ibc.br[,2],-1)-1)*100
## Interanual
interanual <- (ibc.br[,2]/stats::lag(ibc.br[,2],-12)-1)*100
## Anual
anual <- ibc.br[,2]
anual <- (((anual+stats::lag(anual,-1)+stats::lag(anual,-2)+stats::lag(anual,-3)
+stats::lag(anual,-4)+stats::lag(anual,-5)+stats::lag(anual,-6)+stats::lag(anual,-7)
+stats::lag(anual,-8)+stats::lag(anual,-9)+stats::lag(anual,-10)+
stats::lag(anual,-11))/12)/
((stats::lag(anual,-12)+stats::lag(anual,-13)+
stats::lag(anual,-14)+stats::lag(anual,-15)
+stats::lag(anual,-16)+stats::lag(anual,-17)+stats::lag(anual,-18)
+stats::lag(anual,-19)+stats::lag(anual,-20)+stats::lag(anual,-21)
+stats::lag(anual,-22)+stats::lag(anual,-23))/12)-1)*100
# Trimestral
trimestral <- (((ibc.br[,2]+stats::lag(ibc.br[,2],-1)+stats::lag(ibc.br[,2],-2))/3)/((stats::lag(ibc.br[,2],-12)+stats::lag(ibc.br[,2],-13)+stats::lag(ibc.br[,2],-14))/3)-1)*100
table.vmensal <- tail(vmensal, n=3)
table.trimestral <- tail(trimestral, n=3)
table.interanual <- tail(interanual, n=3)
table.anual <- tail(anual, n=3)
table <- cbind(table.vmensal, table.trimestral, table.interanual,
table.anual)
colnames(table) <- c('Mensal', 'Trimestral', 'Interanual', '12 meses')
rownames(table) <- c('Novembro/22', 'Dezembro/22', 'Janeiro/23')
plot1 <- cbind(vmensal, trimestral, interanual, anual)
dates <- seq(as.Date('2005-01-01'), as.Date('2023-01-01'), by='1 month')
plot1 <- window(plot1, start=c(2005,1))
gtsplot(plot1, dates=dates)
Figura 12: Métrica do IBC-Br (%)
Aqui são analisadas informações do Comércio Restrito, do Comércio Ampliado e com as informações desagregadas. No caso do varejo restrito, são 8 setores:
Combustíveis e lubrificantes;
Hipermercados, supermercados, produtos alimentícios, bebidas e fumo;
Tecidos, vestuário e calçados;
Móveis e eletrodomésticos;
Artigos farmacêuticos, médicos, ortopédicos, de perfumaria e cosméticos;
Livros, jornais, revistas e papelaria;
Equipamentos e materiais para escritório, informática e comunicação;
Outros artigos de uso pessoal e doméstico.
O varejo ampliado tem 10 setores, pois inclui ao varejo restrito material de construção e Veículos, motocicletas, partes e peças.
library(tidyverse)
#https://sidra.ibge.gov.br/tabela/8880
restrito <- read.csv2('arquivo07.csv', header=T, sep=";",dec=".", skip=4)
colnames(restrito) <- c('X', 'Receita', 'Volume', 'Receita SA', "Volume SA")
restrito <- select(restrito, Volume, 'Volume SA', Receita, 'Receita SA')
restrito <- ts(restrito[-nrow(restrito),], start=c(2000,1), freq=12)
## Importar o arquivo do comercio ampliado
#https://sidra.ibge.gov.br/tabela/8881
ampliado <- read.csv2('arquivo08.csv', header=T, sep=";",dec=".", skip=4)
colnames(ampliado) <- c('X', 'Receita', 'Volume', 'Receita SA', "Volume SA")
ampliado <- select(ampliado, Volume, 'Volume SA', Receita, 'Receita SA')
ampliado <- ts(ampliado[-nrow(ampliado),], start=c(2003,1), freq=12)
## Importar o arquivo 'desagregado'
#https://sidra.ibge.gov.br/tabela/8883
desagregado <- read.csv2('arquivo09.csv', header=T, sep=";", dec=".", skip=5)
desagregado <- desagregado[-nrow(desagregado),]
#desagregado <- na.omit(desagregado)
desagregado <- desagregado[,c(2:ncol(desagregado))]
desagregado <- ts(desagregado, start=c(2003,1), freq=12)
## Nomes das categorias desagregadas do comercio
names.desagregado <- c("Combustiveis e lubrificantes", "Hipermercados, supermercados, produtos alimenticios, bebidas e fumo", "Hipermercados e supermercados", "Tecidos, vestuario e calcados", "Moveis e eletrodomesticos", "Artigos farmaceuticos, medicos, ortopedicos, de perfumaria e cosmeticos", "Livros, jornais, revistas e papelaria", "Equipamentos e materiais para escritorio, informatica e comunicacao", "Outros artigos de uso pessoal e domestico", "Veículos, motocicletas, partes e peças", "Material de construção")
## Organizando os dados
receita.desagregado <- desagregado[,c(1:11)]
receitasa.desagregado <- desagregado[,c(12:22)]
volume.desagregado <- desagregado[,c(23:33)]
volumesa.desagregado <- desagregado[,c(34:44)]
## Variacao mensal
vmensal <- cbind(restrito[,c(2,4)], ampliado[,c(2,4)])
vmensal <- (vmensal/stats::lag(vmensal,-1)-1)*100
colnames(vmensal) <- c('Volume Restrito', 'Receita Restrito',
'Volume Ampliado','Receita Ampliado')
## Interanual
interanual <- cbind(restrito[,c(2,4)], ampliado[,c(2,4)])
interanual <- (interanual/stats::lag(interanual,-12)-1)*100
colnames(interanual) <- colnames(vmensal)
## Anual
anual <- cbind(restrito[,c(2,4)], ampliado[,c(2,4)])
anual <- (((anual+stats::lag(anual,-1)+stats::lag(anual,-2)+stats::lag(anual,-3)+
stats::lag(anual,-4)+stats::lag(anual,-5)+stats::lag(anual,-6)+
stats::lag(anual,-7)+stats::lag(anual,-8)+stats::lag(anual,-9)+
stats::lag(anual,-10)+stats::lag(anual,-11))/12)/
((stats::lag(anual,-12)+stats::lag(anual,-13)+stats::lag(anual,-14)+
stats::lag(anual,-15)+stats::lag(anual,-16)+stats::lag(anual,-17)+
stats::lag(anual,-18)+stats::lag(anual,-19)+stats::lag(anual,-20)+
stats::lag(anual,-21)+stats::lag(anual,-22)+stats::lag(anual,-23))
/12)-1)*100
colnames(anual) <- colnames(interanual)
# Trimestral
trimestral <- (vmensal+stats::lag(vmensal,-1)+stats::lag(vmensal,-2))/3
colnames(trimestral) <- colnames(vmensal)
table.vmensal <- t(tail(vmensal, n=1))
table.trimestral <- t(tail(trimestral, n=1))
table.interanual <- t(tail(interanual, n=1))
table.anual <- t(tail(anual, n=1))
table_pmc <- cbind(table.vmensal, table.trimestral, table.interanual,
table.anual)
colnames(table_pmc) <- c('Mensal', 'Trimestral', 'Interanual', '12 meses')
#Updated 15/11/18
#ultima <- as.Date('2022-12-01')
dates <- seq(as.Date('2003-01-01'), as.Date('2023-01-01'), by='1 month')
#Variação em relação ao mes anterior
plot1 <- window(vmensal, start=c(2003,1))
gtsplot(plot1, dates=dates)
Figura 13: Variação Mensal Pesquisa Mensal do Comércio (PMC-IBGE)
dates <- seq(as.Date('2003-01-01'), as.Date('2023-01-01'), by='1 month')
plot2 <- window(interanual, start=c(2003,1))
gtsplot(plot2, dates=dates)
Figura 14: Pesquisa Mensal do Comércio (PMC-IBGE) - Variação em relação ao mesmo mês do ano anterior
dates <- seq(as.Date('2003-12-01'), as.Date('2023-01-01'), by='1 month')
plot3 <- window(anual, start=c(2003,12))
gtsplot(plot3, dates=dates)
Figura 15: Pesquisa Mensal do Comércio (PMC-IBGE) - Variação acumulada em 12 meses
#dados_sgs <- GetBCBData::gbcbd_get_series(
#id = c("Confiança do Consumidor" = 4393),
#first.date = "2000-01-01",
#last.date = "2023-03-01",
#format.data = "wide"
#)
#tail(dados_sgs)
#write.csv2(dados_sgs, file='confianca4393.csv')
consumidor <- ts(read.csv2('confianca4393.csv',
header=T, sep=';', dec=",")[,-c(1,2)],
start=c(2000,01), freq=12)
par(mfrow=c(1,1))
plot(consumidor, bty='l', xlab='Tempo', ylab='Indice', xaxt='n', lwd=2)
axis(1, at=c(2000:2023))
grid(col='gray0')
mtext('Indice de Confianca do Consumidor', side=3, line=1, font=2)
Figura 16: Índice de Confiança do Consumidor
Desde a década de 1970, o IBGE divulga a Pesquisa Industrial
Mensal - Produção Física (PIM-PF), que busca investigar o comportamento
do produto real das indústrias extrativa e de transformação.
#Pesquisa com a Industria
#https://sidra.ibge.gov.br/tabela/8888
pim_t <- read.csv2('arquivo10.csv', header=T, sep=';',
dec='.', skip=4)[,-1]
colnames(pim_t) <- c('INDGERAL', 'INDEXT', 'INDTRANSF', 'ALIMENTOS', 'TEXTEIS', 'FARMACEUTICOS', 'METALURGIA', 'MAQUINAS', 'VEICULOS','INDGERAL', 'INDEXT', 'INDTRANSF', 'ALIMENTOS', 'TEXTEIS', 'FARMACEUTICOS', 'METALURGIA', 'MAQUINAS', 'VEICULOS')
pim <- ts(pim_t[-nrow(pim_t),c(1:9)], start=c(2002,01), freq=12)
pim_sa <- ts(pim_t[-nrow(pim_t),c(10:18)], start=c(2002,01), freq=12)
### Margem PIM-Pf
pim.mensal <- (pim_sa/stats::lag(pim_sa,-1)-1)*100
colnames(pim.mensal) <- colnames(pim_sa)
### Interanual PIm-PF
pim.intanual <- (pim/stats::lag(pim,-12)-1)*100
colnames(pim.intanual) <- colnames(pim)
### Acumulado em 12 meses
anual <- pim_sa
anual <- (((anual+stats::lag(anual,-1)+stats::lag(anual,-2)+stats::lag(anual,-3)
+stats::lag(anual,-4)+stats::lag(anual,-5)+stats::lag(anual,-6)+stats::lag(anual,-7)
+stats::lag(anual,-8)+stats::lag(anual,-9)+stats::lag(anual,-10)+
stats::lag(anual,-11))/12)/
((stats::lag(anual,-12)+stats::lag(anual,-13)+
stats::lag(anual,-14)+stats::lag(anual,-15)
+stats::lag(anual,-16)+stats::lag(anual,-17)+stats::lag(anual,-18)
+stats::lag(anual,-19)+stats::lag(anual,-20)+stats::lag(anual,-21)
+stats::lag(anual,-22)+stats::lag(anual,-23))/12)-1)*100
colnames(anual) <- colnames(pim)
par(mfrow=c(1,1))
#Conjuntura11
plot(anual[,1], xlab='', ylab='% a.a.', lwd=3,
main='Crescimento acumulado em 12 meses (% a.a.)')
axis(2, at=c(2003:2023))
grid(col='grey0')
Figura 17: PIM-IBGE Crescimento acumulado em 12 meses (%a.a)
#window <- window(pim.mensal, start=c(2002,02))
dates <- seq(as.Date('2002-02-01'), as.Date('2023-01-01'), by='1 month')
#Conjuntura12
gtsplot(pim.mensal,dates=dates)
Figura 18: PIM Variação Mensal
#window <- window(pim.intanual, start=c(2003,01))
dates <- seq(as.Date('2003-01-01'), as.Date('2023-01-01'), by='1 month')
#Conjuntura13
gtsplot(pim.intanual,dates=dates)
Figura 19: PIM Variação mesmo mês do ano anterior
dates <- seq(as.Date('2003-12-01'), as.Date('2023-01-01'), by='1 month')
#Conjuntura14
gtsplot(anual,dates=dates)
Figura 20: PIM Acumulado Anual
Uma última variável de nível de atividade a ser analisada é a Utilização da Capacidade Instalada (UCI) da indústria. Essa métrica é importante para verificar o uso do capital, medindo assim o grau de ociosidade na economia. Para isto é usada a série 24352 do Sistema de Séries Temporais do Banco Central, que mede a UCI da indústria de transformação, fornecida pela Fundação Getúlio Vargas (FGV).
#dados_sgs <- GetBCBData::gbcbd_get_series(
#id = c("UCI" = 24352),
#first.date = "2001-01-01",
#last.date = "2023-03-01",
#format.data = "wide"
#)
#tail(dados_sgs)
#write.csv2(dados_sgs, file='arquivo11.csv')
uci <- read.csv2('arquivo11.csv',
header=T, sep=';',
dec=",")[,-c(1,2)]
dates <- seq(as.Date('2001-01-01'), as.Date('2023-03-01'), by='1 month')
df <- data.frame(time=dates, uci=uci)
uci_plot <- ggplot(df, aes(x=time))+
geom_line(aes(y=uci), linewidth=.8, colour='blue')+
xlab('Tempo')+ylab('%')+
theme_classic() #Definindo tema
ggplotly(uci_plot)
Figura 21: Utilização da capacidade instalada – indústria de transformação (FGV)